This invention relates generally to host computer systems and peripherals. More specifically, the peripherals have a Personal Computer ("PC") card form factor, the card being externally and removably coupled to a host system. The invention relates to structures and configurations of such a card, particularly for implementing mass storage peripherals such as electrically erasable programmable read-only-memories (EEPROM) or Flash EEPROM system.
Computer systems typically use high speed semiconductor random access memory (RAM) for storing temporary data. However, RAM is volatile memory; that is, when power to the computer system is disconnected, data stored in RAM is lost.
For long-term, non-volatile storage, two types of memory are typically employed. One type is magnetic disk memory intended for mass storage with practically unlimited number of write operations. The other type is semiconductor memory, traditionally intended for storing a relatively small amount of data (e.g. system parameters) with no or limited number of write operations.
When mass storage is desired, magnetic disk drives, whether fixed or removable, are generally more economical and more amenable to write operations than solid-state memory. Typically, a computer system employs a combination of fixed and removable (floppy) magnetic disks. However, they are relatively slow, bulky and require high precision moving mechanical parts. Consequently, they are not rugged and are prone to reliability problems, as well as being slower and consuming significant amounts of power.
The undesirable features of magnetic disks become even more acute with the advent of portable and mobile computing. Disk drives are obstacles in the quest towards greater portability and lower power consumption of computer systems.
Non-volatile semiconductor or solid-state memories have the advantage of being speedy, light-weight and low-power. Examples are ROM, EEPROM and Flash EEPROM which retain their memory even after power is shut down. However, ROM and PROM cannot be reprogrammed. UVPROM cannot be erased electrically. EEPROM and Flash EEPROM do have the further advantage of being electrically writable (or programmable) and erasable. Traditionally, these semiconductor memories has been employed in small amount for permanent storage of certain computer system codes or system parameters that do not change.
There is currently underway an effort to apply non-volatile Flash EEPROM memory systems for mass storage applications. For example, they are intended to replace either of the existing fixed or removable floppy magnetic disk systems, or both. Such systems are disclosed in commonly assigned and copending U.S. patent application Ser. No. 07/684,034, filed Apr. 11, 1991, COMPUTER MEMORY CARD HAVING A LARGE NUMBER OF EEPROM INTEGRATED CIRCUIT CHIPS AND MEMORY SYSTEMS WITH SUCH CARDS and Ser. No. 07/736,732 filed Jul. 26, 1991, COMPUTER MEMORY CARDS USING FLASH EEPROM INTEGRATED CIRCUIT CHIPS AND MEMORY-CONTROLLER SYSTEMS. Relevant portions of these disclosures are incorporated herein by reference. It is now becoming possible to fabricate a few megabytes of Flash EEPROM on a single semiconductor integrated circuit chip. As a result, several megabytes to tens of megabytes of memory can readily be packaged in a physically compact memory card, the size of an ordinary credit card.
Indeed, a series of industry "PC Card Standards" are now being promulgated by the Personal Computer Memory Card International Association (PCMCIA), Sunnyvale, Calif., U.S.A. Excerpts of the current PCMCIA Standards, Edition Release 2, dated November, 1992 are incorporated herein by reference. These standards set mechanical (Types I, II and III) and technical (Revision 1.0, 2.0) specifications for a memory card and its connection to a host.
The PCMCIA card has the form factor approximately the size of a credit card and is externally connectable to a host computer system via the PCMCIA interface. Originally, these cards were intended as memory card add-ons for portable or mobile computing systems. Soon thereafter their standards were expanded to accommodate other peripherals such as modems, network adapters, and hard disks. Thus, PCMCIA Type I card is 3.3 mm in overall outside thickness, less than 5.5 cm in width, and less than 9.0 cm in length. Types II and III have similar dimensions, except Type II card is 5 mm thick and Type III card is 10.5 mm thick. Revision 1.0 of the technical specification dated September 1990, is a memory-only standard for memory card applications. Revision 2.0, dated September 1991, is a standard with added input/output (I/O) capabilities and software support suitable for other non-memory types of peripherals.
In memory card applications, such PC cards have been commercially implemented primarily using either ROM or SRAM, with SRAM made non-volatile through backup battery. These solid-state memories operate and function under similar conditions as RAM, in that they are directly connected to the host's bus and addressable by the host's processor. Thus, similar to RAM, they can be simply added to a host computer system without additional hardware or software.
On the other hand, PC cards using EEPROM and Flash EEPROM have quite different properties and operating requirements that make their incorporation into a host computer system not as straight forward. Typically, additional hardware such as a controller and software are required to control the operations of the EEPROM or Flash EEPROM. The controller generally provides the necessary voltage conditions for the various memory operations. In more sophisticated implementations, it can communicate with a host via a standard disk drive interface, store the data under a prescribed file structure in the Flash memory (e.g. compatible with a standard disk operation system), and handle any errors that may arise.
The requirement for additional support hardware (e.g. controller) and software (e.g. microcode or firmware and drivers) in these devices poses issues of cost and inflexibility in memory configuration as well as system updating and upgrading. For example, when Flash EEPROM PC cards are used to replace magnetic floppies or other removable storage, the additional support hardware to implement the control functions may contribute significantly to the cost and other overhead of the product relative to the memory capacity they provide.
Similar considerations also apply to other types of peripherals, such as hard disks, modems and network adapters. Their support hardware and software tend to add cost, overhead and inflexibility to the final products.
Accordingly, it is a general object of the invention to provide a peripheral in the form of a PC card that can be removably connected to a host system from the external of the host system, and that is cost-effective and flexible in configuration.
It is an object of the invention to provide such a PC card with a specific type of semiconductor memory system having non-volatility, ease of erasing and rewriting, speed of access, and further being compact, light-weight, low power, low cost, reliable, and flexible in configuration.
It is another object of the invention to provide a removable memory card that is removably coupled externally to a host system via a standard interface such as a PCMCIA interface.
It is another object of the invention to provide a comprehensive PC card that is adapted for use in a number of peripheral applications.
It is a particular object of the invention to provide low cost Flash EEPROM memory cards, for example to replace floppy disks, magnetic tapes, or photographic recording films.
It is another object of the invention to provide a removable PC card that can accommodate components offloaded from the host system in order to minimize the size and cost of the host system and to provide flexibility in system configuration.
It is yet another object of the invention to provide a removable card that can interface either directly to a host system via an interface native to the card or indirectly via a standard interface to the host system.
It is yet another object of the invention to provide a removable card that stores encoded data that can be decoded when the card is relocated from one host system to another.